databases.ts 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import { paths } from 'api-types'
  2. import { NextApiRequest, NextApiResponse } from 'next'
  3. import apiWrapper from '@/lib/api/apiWrapper'
  4. import { PROJECT_REST_URL } from '@/lib/constants/api'
  5. export default (req: NextApiRequest, res: NextApiResponse) => apiWrapper(req, res, handler)
  6. async function handler(req: NextApiRequest, res: NextApiResponse) {
  7. const { method } = req
  8. switch (method) {
  9. case 'GET':
  10. return handleGet(req, res)
  11. default:
  12. res.setHeader('Allow', ['GET'])
  13. res.status(405).json({ data: null, error: { message: `Method ${method} Not Allowed` } })
  14. }
  15. }
  16. type ResponseData =
  17. paths['/platform/projects/{ref}/databases']['get']['responses']['200']['content']['application/json']
  18. const handleGet = async (_req: NextApiRequest, res: NextApiResponse<ResponseData>) => {
  19. return res.status(200).json([
  20. {
  21. cloud_provider: 'localhost' as any,
  22. connectionString: '',
  23. connection_string_read_only: '',
  24. db_host: '127.0.0.1',
  25. db_name: 'postgres',
  26. db_port: 5432,
  27. db_user: 'postgres',
  28. identifier: 'default',
  29. inserted_at: '',
  30. region: 'local',
  31. restUrl: PROJECT_REST_URL,
  32. size: '',
  33. status: 'ACTIVE_HEALTHY',
  34. },
  35. ])
  36. }